package com.itheima.stock.service;

import com.itheima.stock.pojo.domain.PermissionRespNodeVo;
import com.itheima.stock.pojo.entity.SysRole;
import com.itheima.stock.vo.req.AddRolesAndPermsReqVo;
import com.itheima.stock.vo.req.UpdatePermsByRoleIdReqVo;
import com.itheima.stock.vo.resp.PageResult;
import com.itheima.stock.vo.resp.R;

import java.util.List;


public interface RolesService {
    R<PageResult<SysRole>> getRolesPageInfo(Integer pageNum, Integer pageSize);

    R<List<PermissionRespNodeVo>> getPermissionsTreeAll();

    R addRolesAndPerms(AddRolesAndPermsReqVo reqVo);

    R<List<Long>> getPermsByRoleId(String roleId);

    R updatePermsByRoleId(UpdatePermsByRoleIdReqVo reqVo);

    R deleteRoles(String roleId);

    R updateRoleStatus(String roleId, Integer status);
}